package com.wlc.oop.demo04;

/**
 * @author 王立朝 wanglichao@champion-credit.com
 * @description 测试类
 * @date 2021-06-27 09:36
 */
public class Test {

    public static void main(String[] args) {
        // new Person() 和 new Teacher() 对象的实际类型是确定的

        Teacher p1 = new Teacher();
        // 一个对象的引用类型是可以不同的:
        // 父类的引用p3 指向子类Teacher
        Person p2 = new Teacher();
        // 子类Teacher 重写了父类的方法，那么会执行子类的方法
        Object p3 = new Teacher();
        p2.run();
        p1.run();
        System.out.println("======");
        // 父类执行子类的其他方法,需要强制类型转换
        ((Teacher) p2).eat();
        p1.eat();

    }
}
